package com.reminder.shared;

import java.util.List;

import com.google.web.bindery.requestfactory.shared.Request;
import com.google.web.bindery.requestfactory.shared.RequestContext;
import com.google.web.bindery.requestfactory.shared.ServiceName;

@ServiceName(value = "com.reminder.server.ReminderService", locator = "com.reminder.server.ReminderServiceLocator")
public interface ReminderRequest extends RequestContext {

	Request<TaskProxy> createTask();

	Request<TaskProxy> readTask(Long id);

	Request<TaskProxy> updateTask(TaskProxy task);

	Request<Void> deleteTask(TaskProxy task);
	Request<Void> createUserGroup(String acceptEmail); 
	Request<Void> updateUserGroupInviteToTrue(String acceptInvite);
	Request<Void>  updateTasksNotified(long taskId);
	
	Request<List<TaskProxy>> queryTasks();
	Request<List<String>> getInvites();
	Request<List<String>> getInvitesNotAccepted();
	Request<List<TaskProxy>> findAllNotNotified();

}
